
<!doctype html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/favicon.ico">
    <link rel="canonical" href="https://getbootstrap.com/docs/3.4/examples/signin/">

    <title>在线书城用户登录</title>

    <!-- Bootstrap core CSS -->
    <link href="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/dist/css/bootstrap.min.css" rel="stylesheet">

    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <link href="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/assets/css/ie10-viewport-bug-workaround.css" rel="stylesheet">

    <!-- Custom styles for this template -->
    <link href="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/examples/signin/signin.css" rel="stylesheet">

    <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
    <!--[if lt IE 9]><script src="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
    <script src="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/assets/js/ie-emulation-modes-warning.js"></script>

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>

  <body>

    <div class="container">

      <form class="form-signin">
        <h2 class="form-signin-heading">在线书城用户登录</h2>
        <label for="username" class="sr-only">用户名</label>
        <input type="text" id="username" class="form-control" placeholder="用户名" required autofocus>
        <label for="password" class="sr-only">密码</label>
        <input type="password" id="password" class="form-control" placeholder="密码" required>
        <div class="checkbox">
          <label>
            <input type="checkbox" value="remember-me"> 记住我
          </label>
        </div>
        <button class="btn btn-lg btn-primary btn-block" type="button" id="btn_submit">登录</button>
      </form>

    </div> <!-- /container -->
    <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"
            integrity="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ"
            crossorigin="anonymous"></script>
    <script>
      window.jQuery || document.write(
              '<script src="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.15/assets/js/vendor/jquery.min.js"><\/script>'
      )
    </script>
    <script src="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.15/dist/js/bootstrap.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.15/assets/js/docs.min.js"></script>
    <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
    <script src="https://cdn.jsdelivr.net/npm/@bootcss/v3.bootcss.com@1.0.14/assets/js/ie10-viewport-bug-workaround.js"></script>
    <script src="https://cdn.bootcdn.net/ajax/libs/sweetalert/2.1.2/sweetalert.min.js" type="text/javascript"></script>
    <script type="text/javascript">
      var messageAlert = function (title, text, icon, flag, fun) {
        swal({
          title: title,
          text: text,
          icon: icon,
          button: "确定",
        }).then(fun);
        return flag;
      };
      $(function () {
        $('#btn_submit').click(function () {
          var username = $('#username').val();
          var password = $('#password').val();
          var usernamePatt = /^\w{4,20}$/;
          if (!usernamePatt.test(username)) {
            return messageAlert("格式错误", "会员名称必须是4-20位！", "error", false, null);
          }
          if (!usernamePatt.test(password)) {
            return messageAlert("格式错误", "密码必须是4-20位！", "error", false, null);
          }
          $.ajax({
            //该属性设置ajax方法是否为异步true是异步；false非异步，必须得等该方法执行完以后，再执行后续代码。
            async: true,
            //请求的地址
            url: "./user.do",
            //请求的类型
            type: "GET",
            //传输的数据类型
            //左边是属性名，右边是属性值；属性名可以不用双引号
            data: {
              action: 'login',
              username: username,
              password: password
            },
            //响应成功后的回调函数
            success: function (data) {
              //响应成功后的回调函数
              if (data == 1) {
                messageAlert("登录成功", "用户登录成功！", "success", true, function (isOk) {
                  location.href = "../index.html";
                });
              } else {
                return messageAlert("登录失败", "用户名或者密码不正确！", "error", false, null);
              }
            },
            //响应的数据类型格式
            //text 表示纯文本
            //xml 表示xml数据
            //json 表示JSON对象
            dataType: "text"
          });
        });
      });
    </script>
  </body>
</html>
